import java.util.Arrays;
import java.util.Comparator;
 
public class Demo6732 {

  public static void main(String[] args) {
    //使用自然排序
    Course6732[] courses=getCourses();
    
//    Arrays.sort(courses,(o1,o2)->o1.getTerm().compareTo(o2.getTerm()));
//    for (Course6732 c : courses) {
//      System.out.println(c);
//    }
    
    Arrays.stream(getCourses())
	.sorted((c1,c2)->c1.getTerm().compareToIgnoreCase(c2.getTerm()))
	.forEach(System.out::println);
    
    
    System.out.println("最低分:"+Arrays.stream(getCourses()).mapToInt(c1->c1.getScore()).min().getAsInt());
	System.out.println("最高分:"+Arrays.stream(getCourses()).mapToInt(c1->c1.getScore()).max().getAsInt());
	System.out.println("平均分:"+Arrays.stream(getCourses()).mapToInt(c1->c1.getScore()).average().getAsDouble());
	
System.out.println("85分以上：");
	
	Arrays.stream(getCourses())
	.filter(c1->c1.getScore()>85)
	.forEach(System.out::println);
	
    
    
  }
  private static Course6732[] getCourses() {
    //使用数组保存一组对象
    Course6732[] courses=new Course6732[10];
    courses[0]=new Course6732("A001", "C程序设计基础", "1上", 4, 80);
    courses[1]=new Course6732("B002", "Pthon程序基础", "1下", 2, 85);
    courses[2]=new Course6732("A002", "面向对象程序设计", "2上", 3, 78);
    courses[3]=new Course6732("C001", "Java程序高级开发", "3上", 2, 83);
    courses[4]=new Course6732("C002", "软件工程与UML", "3下", 3, 75);
    courses[5]=new Course6732("B001", "操作系统", "2下", 3, 90);
    courses[6]=new Course6732("A003", "数据库原理", "2上", 3, 78);
    courses[7]=new Course6732("B003", "网络基础", "3上", 3, 75);
    courses[8]=new Course6732("0001", "大学英语", "1上", 3, 80);
    courses[9]=new Course6732("0002", "高等数学", "1下", 2, 85);
    return courses;
  }
}
